The aerospace industry uses numerically controlled (NC), multi-axis machine tools to fabricate high precision parts. A typical NC multi-axis machine tool includes a kinematic linkage for positioning and orienting a tool relative to a work piece. A 5-axis machine tool, for instance, can move a tool tip along x, y and z axes, and rotate the tool tip about the x and y axes.
These machine tools are now being specified and built to achieve a particular volumetric accuracy necessary to properly execute an intended process or job. For example, a machined part may have a surface location tolerance of ±0.010″. A multi-axis machine tool would be required to position a tool tip to better than ±0.010″ within a working volume. However, most machine tools do not have such mechanical accuracy built in. Therefore, software compensation is used to attain the required accuracy.
As the tool tip moves towards a singular region, the linkage might be commanded to produce large joint motions. This is problematic. The large joint motions might be physically unrealizable since machine joints have velocity and acceleration constraints. In addition, since the compensation is effectively unplanned motion, collisions with obstacles are risked.
Measures can be taken to avoid large joint motions. For example, the well known Linear-Quadratic Regulator (LQR) method of optimal control uses weighting matrices to minimize joint penalty far from the singular regions, and maximize joint and error penalty when close to a singular region, but only in the singular direction.
However, the weighting matrices are static. That is, they are designed ahead of time. Consequently, the LQR method can produce compensation that is heavily damped even though little damping is needed, or it can produce excessive joint motion when close to a singular region.